unit uDMRels;

interface

uses
  System.SysUtils, System.Classes, Data.DB, ZAbstractRODataset, ZDataset,
  frxClass, frxDBSet;

type
  TDMRels = class(TDataModule)
    frxDBDataset1: TfrxDBDataset;
    QrRequisitosConcluidos: TZReadOnlyQuery;
    QrRequisitosConcluidosminutos: TLargeintField;
    QrRequisitosConcluidostitulo: TWideStringField;
    QrRequisitosConcluidosprojeto: TWideStringField;
    QrRequisitosConcluidosdt_solicita: TDateField;
    QrRequisitosConcluidosdt_conclusao: TDateField;
    QrRequisitosConcluidosrequisito: TWideMemoField;
    QrRequisitosConcluidosversao: TWideStringField;
    QrRequisitosConcluidoslink_video: TWideStringField;
    QrRequisitosConcluidosvideo_ajuda: TWideStringField;
    QrRequisitosConcluidosLimitacao: TWideMemoField;
    QrRequisitosConcluidostempo: TStringField;
    RelRequisitosConcluidos: TfrxReport;
    DataSource1: TDataSource;
    frxDBDataset2: TfrxDBDataset;
    QrHorasDetalhadas: TZReadOnlyQuery;
    RelHrsDet: TfrxReport;
    DataSource2: TDataSource;
    QrHorasDetalhadasminutos2: TLargeintField;
    QrHorasDetalhadasdata: TDateField;
    QrHorasDetalhadascodigo: TLargeintField;
    QrHorasDetalhadasminutos: TLargeintField;
    QrHorasDetalhadashora: TLargeintField;
    QrHorasDetalhadastitulo: TWideStringField;
    QrHorasDetalhadasprojeto: TWideStringField;
    QrHorasDetalhadasdt_solicita: TDateField;
    QrHorasDetalhadasdt_conclusao: TDateField;
    QrHorasDetalhadasrequisito: TWideMemoField;
    QrHorasDetalhadasversao: TWideStringField;
    QrHorasDetalhadaslink_video: TWideStringField;
    QrHorasDetalhadasvideo_ajuda: TWideStringField;
    QrHorasDetalhadasLimitacao: TWideMemoField;
    QrHorasDetalhadasTempo: TStringField;
    procedure QrRequisitosConcluidosCalcFields(DataSet: TDataSet);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  DMRels: TDMRels;

implementation

{%CLASSGROUP 'Vcl.Controls.TControl'}

uses uPrinc;

{$R *.dfm}

procedure TDMRels.QrRequisitosConcluidosCalcFields(DataSet: TDataSet);
var
    vTempo: String;
    vHoras, vMinutos: integer;
begin
    vHoras := Trunc(QrRequisitosConcluidosminutos.AsCurrency / 60);
    vMinutos := QrRequisitosConcluidosminutos.AsInteger - (vHoras * 60);
    vTempo := IntToStr(vHoras)+'h ' + IntToStr(vMinutos)+'m ';
    QrRequisitosConcluidostempo.AsString := vTempo;
end;

end.
